package com.niiwoo.activity.stage.service.activity;

import java.util.Date;
import java.util.List;

import com.niiwoo.activity.stage.dto.request.activity.ActivityInfoListReqDTO;
import com.niiwoo.activity.stage.dto.request.activity.ActivityRequestDTO;
import com.niiwoo.activity.stage.dto.response.activity.ActivityResponseDTO;
import com.niiwoo.tripod.provider.dto.response.PageResponseDTO;

public interface ActivityDubboService {
	
	/**
	 * 查询活动列表
	 * @param reqDTO
	 * @return
	 */
	PageResponseDTO<ActivityResponseDTO> appShowActivityList(ActivityRequestDTO reqDTO);

	/**
	 * 查询活动列表
	 * @param reqDTO
	 * @return
	 */
	PageResponseDTO<ActivityResponseDTO> getActivityList(ActivityRequestDTO reqDTO);

	/**
	 * 查询活动详情
	 * @param activityId
	 * @return
	 */
	ActivityResponseDTO activityDetail(Integer activityId);
	ActivityResponseDTO activityDetailByCode(String activityCode);

	/**
	 * 添加活动
	 * @param reqDTO
	 * @return
	 */
	Integer activityAdd(ActivityRequestDTO reqDTO);

	/**
	 * 修改活动
	 * @param reqDTO
	 * @return
	 */
	Integer activityEdit(ActivityRequestDTO reqDTO);

	/**
	 * 删除活动
	 * @param reqDTO
	 * @return
	 */
	Integer activityRemove(ActivityRequestDTO activity);

	/**
	 * 通过活动编码集查询活动信息
	 * @param activityCodes
	 * @return
	 */
	List<ActivityResponseDTO> getActivityByCodes(ActivityInfoListReqDTO reqDto);
	/**
	 * 是否存在热门活动
	 * @param activityHitDate
	 * @return
	 */
	Boolean existsHotActivity(Date activityHitDate);

}
